package com.joker.aigc.blog.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.joker.aigc.blog.domain.dto.ArticleCommentDTO;
import com.joker.aigc.blog.domain.dto.ArticleCommentQueryDTO;
import com.joker.aigc.blog.domain.po.ArticleCommentPO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.joker.aigc.blog.domain.vo.ArticleCommentVO;

/**
 * @author luckincoffee
 * @description 针对表【article_comment】的数据库操作Service
 * @createDate 2025-01-05 17:10:38
 */
public interface ArticleCommentService extends IService<ArticleCommentPO> {


    /**
     * 根据文章id分页获取评论信息
     *
     * @param articleCommentQueryDTO 查询条件
     * @return 分页评论信息
     */
    Page<ArticleCommentVO> getCommentsByArticleId(ArticleCommentQueryDTO articleCommentQueryDTO);

    /**
     * 根据评论id获取子评论信息
     *
     * @param articleCommentQueryDTO 评论id
     * @return 子评论信息
     */
    Page<ArticleCommentVO> getSubCommentsByCommentId(ArticleCommentQueryDTO articleCommentQueryDTO);


    void addComment(ArticleCommentDTO articleCommentPO);


    void deleteComment(Long commentId);
}
